Andy Murray will face Novak Djokovic in the last 16 of the Madrid Open after battling past world No. 16 Denis Shapovalov in three sets.
The three-time Grand Slam champion produced an impressive display in only his second clay match in nearly two years to win 6-1 3-6 6-2.
Murray will next face world No. 1 Djokovic after he eased past Gael Monfils in his opening match at the tournament.
It will be the 37th meeting between the pair, with Djokovic leading the head to head 25-11 and having won the last time they met in Qatar in 2017. Djokovic has also won five of their six meetings on clay.
Murray beat Dominic Thiem in his opening match and played a brilliant first set against Shapovalov, who struggled to get going under a closed roof.
The Canadian played a poor service game at 1-1 as unforced errors and a double fault gifted Murray a break. Murray had won 10 out of 13 points at one stage and broke again for 5-1 as Shapovalov missed a routine volley at the net.
Murray then won the set in style with a fine drop shot followed by excellent touch at the net after chasing down a short ball.
Having made 13 unforced errors in the first set, Shapovalov tightened up his game in the second set.
He fended off two break points at 2-2 and then broke Murray for the first time with some solid play to open up a 4-2 lead.
Shapovalov looked invigorated and closed out the set on his serve to level the match.
Murray didn’t back down and after missing two break points at 2-2 in a competitive third set he broke after a brilliant passing shot beat a diving Shapovalov.
Murray saved a break point in the next game and then closed out a memorable win with his third match point on Shapovalov’s serve.
Carlos Alcaraz beat Nikoloz Basilashvili 6-3 7-5 to reach the last 16, where he will face either Cameron Norrie or John Isner.